home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Gold Collection / Software Vault - The Gold Collection (American Databankers) (1993).ISO / cdr10 / ehp10.zip / CURSES.H < prev    next >
C/C++ Source or Header  |  1993-06-19  |  4KB  |  98 lines

  1. /* *********************** Include-Datei CURSES.H ******************* */
  2. /* Diese Datei enthält Definitionen sowohl für die Curses-Module      */
  3. /* als auch für die Module, die die Cursesfunktionen benutzen wollen. */
  4.  
  5. #define OWN_CURSES
  6.  
  7. #define TRUE  1
  8. #define FALSE 0
  9. #define SZ_SC (COLS*LINES*sizeof(short int)) /* Bildschirmlänge in Bytes */
  10. #define STD_ATTR 7         /* Standardattribut (White) */
  11. #define BUFF_SIZE 256      /* Größe des Zeichenpuffers für getch */
  12.  
  13. #include <stdlib.h>
  14.  
  15. typedef struct s_win
  16. {
  17.   short int _cursor_x,_cursor_y; /* Cursorposition */
  18.   short int _start_x,_start_y;   /* Position linke obere Fensterecke */
  19.   short int _width_x,_width_y;   /* Fenstergröße */
  20.   short int *_image;             /* Zeiger auf Fensterinhalt */
  21.   char      _scrflag,            /* Flag, ob gescrollt werden darf */
  22.         _lvokflag,           /* Flag, ob Cursor sichtbar */
  23.         _dlyflag,            /* Flag, ob nodelay gesetzt ist */
  24.         _tabflag,            /* Flag, ob Tabs expandiert werden sollen */
  25.         _attribs;            /* Zeichenattribute */
  26. } WINDOW;
  27.  
  28. #ifndef cur_main
  29. extern WINDOW *curscr,*stdscr,*newwin();
  30. extern char rawflag,echoflag,nlflag;
  31. extern short int LINES,COLS;
  32. #endif
  33.  
  34. #define move(y,x)    wmove(stdscr,y,x)
  35. #define getyx(w,y,x) y=w->_cursor_y; x=w->_cursor_x
  36. #define refresh()    wrefresh(stdscr)
  37. #define addch(c)     waddch(stdscr,c)
  38. #define insch(c)     winsch(stdscr,c)
  39. #define inch()       winch(stdscr)
  40. #define getch()      wgetch(stdscr)
  41. #define getstr(s)    wgetstr(stdscr,s)
  42. #define addstr(s)    waddstr(stdscr,s)
  43. #define delch()      wdelch(stdscr)
  44. #define attrset(a)   wattrset(stdscr,a)
  45. #define attron(a)    wattron(stdscr,a)
  46. #define attroff(a)   wattroff(stdscr,a)
  47.  
  48. #define erase()    werase(stdscr)
  49. #define wclear(w)  werase(w)
  50. #define clear()    wclear(stdscr)
  51. #define clrtoeol() wclrtoeol(stdscr)
  52. #define clrtobot() wclrtobot(stdscr)
  53. #define deleteln() wdeleteln(stdscr)
  54. #define insertln() winsertln(stdscr)
  55.  
  56. #define mvwaddch(w,y,x,c)  (wmove(w,y,x),waddch(w,c))
  57. #define mvwinsch(w,y,x,c)  (wmove(w,y,x),winsch(w,c))
  58. #define mvwinch(w,y,x)     (wmove(w,y,x),winch(w))
  59. #define mvwgetstr(w,y,x,s) (wmove(w,y,x),wgetstr(w,s))
  60. #define mvwaddstr(w,y,x,s) (wmove(w,y,x),waddstr(w,s))
  61. #define mvwdelch(w,y,x)    (wmove(w,y,x),wdelch(w))
  62. #define mvwdeltoeol(w,y,x) (wmove(w,y,x),wdeltoeol(w))
  63. #define mvwdeleteln(w,y,x) (wmove(w,y,x),wdeleteln(w))
  64. #define mvwinsertln(w,y,x) (wmove(w,y,x),winsertln(w))
  65.  
  66. #define mvaddch(y,x,c)  (wmove(stdscr,y,x),waddch(stdscr,c))
  67. #define mvinsch(y,x,c)  (wmove(stdscr,y,x),winsch(stdscr,c))
  68. #define mvinch(y,x)     (wmove(stdscr,y,x),winch(stdscr))
  69. #define mvgetstr(y,x,s) (wmove(stdscr,y,x),wgetstr(stdscr,s))
  70. #define mvaddstr(y,x,s) (wmove(stdscr,y,x),waddstr(stdscr,s))
  71. #define mvdelch(y,x)    (wmove(stdscr,y,x),wdelch(stdscr))
  72. #define mvdeltoeol(y,x) (wmove(stdscr,y,x),wdeltoeol(stdscr))
  73. #define mvdeleteln(y,x) (wmove(stdscr,y,x),wdeleteln(stdscr))
  74. #define mvinsertln(y,x) (wmove(stdscr,y,x),winsertln(stdscr))
  75.  
  76. #define A_NORMAL    0    /* Keine Attribute */
  77. #define A_STANDOUT  2    /* Grün */
  78. #define A_UNDERLINE 4    /* Rot */
  79. #define A_BLINK     128  /* Binken */
  80. #define A_DIM       8    /* Nur intense */
  81. #define A_BOLD      2    /* Grün */
  82. #define A_INVIS     136  /* Intense auf Intense */
  83.  
  84. #define OK  1
  85. #define ERR 0
  86.  
  87. #define wstandend(w) wattrset(w,0)
  88. #define wstandout(w) wattrset(w,A_STANDOUT)
  89. #define standend()   wstandend(stdscr)
  90. #define standout()   wstandout(stdscr)
  91.  
  92. #define raw()        (rawflag = TRUE)
  93. #define noraw()      (rawflag = FALSE)
  94. #define echo()       (echoflag = TRUE)
  95. #define noecho()     (echoflag = FALSE)
  96. #define nl()         (nlflag = TRUE)
  97. #define nonl()       (nlflag = FALSE)
  98.